![]() |
PATH![]() |
The USL provides an interface to services provided by the USB Manager. These services make it so class drivers need only link against the USB Services library or driver services library.
The errors returned by the USB Management functions include:
kUSBBadDispatchTable
|
-6950 | improper driver dispatch table |
kUSBUnknownNotification
|
-6949 | notification type not defined |
kUSBQueueFull
|
-6948 | internal queue full |
The USBExpertInstallDeviceDriver function notifies the USB Manager that there is a device that needs a driver matched and loaded. Typically only hub drivers need the service provided by this function.
OSStatus USBExpertInstallDeviceDriver(USBDeviceRef ref,
USBDeviceDescriptorPtr *desc
USBReference hubRef,
UInt32 port,
UInt32 busPowerAvailable);
The ref parameter can be a device reference or an interface reference. Similarly the desc parameter can be a device or interface descriptor.
The USBExpertRemoveDeviceDriver function notifies the USB Manager that a device has been removed from the bus and that the class driver for that device needs to be terminated. Typically only hub drivers need the service provided by this function.
OSStatus USBExpertRemoveDeviceDriver(USBDeviceRef ref);
The ref parameter can be a device reference or an interface reference.
The USBExpertInstallInterfaceDriver function notifies the USB Manager that a class driver needs to be loaded for the given interface of the given device. This function is used by class drivers that select configurations and interfaces. The drivers that use this functionality are typically composite class drivers.
OSStatus USBExpertInstallInterfaceDriver(USBDeviceRef ref,
USBDeviceDescriptor *desc,
USBInterfaceDescriptor *interface,
USBReference hubRef,
UInt32 busPowerAvailable);
The USBExpertRemoveInterfaceDriver Function notifies the USB Manager that a device has been removed from the bus and that the class driver needs to be disposed.
OSStatus USBExpertRemoveInterfaceDriver(USBInterfaceRef ref);
Previous | Back Up One Level | Next |